Welcome to pandas!

2.9 表格选择之loc切片法-列选择

列的选择方式分为单列、连续多列、不连续多列几种选择方式。

列选择的表示方式有两各种,一种列索引为自然号,格式只能是df.loc[:,列索引序号];

另一种列索引为标签,格式只能是df.loc[:,”列索引标签号”]。


多列自然号

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path)

df.columns=[ 0,1,2,3,4,5 ]

t=df.loc[:,[ 1,2,4 ]]

print (t)

返回:

1 2 4
0 小王 87
1 小曾 55
2 小李 34
3 小张 67
4 小林 78

多列标签

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path)

t=df.loc[:, "姓名":"1月" ]

print (t)

返回:

姓名 姓别 1月
0 小王 87
1 小曾 55
2 小李 34
3 小张 67
4 小林 78

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path)

t=df.loc[:, "姓名" :]

print (t)

返回:

姓名 姓别 1月 2月 3月
0 小王 87 79 37
1 小曾 55 27 48
2 小李 34 47 85
3 小张 67 85 59
4 小林 78 49 76

列标签连续

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path)

t=df.loc[df[ "1月" ]>60, "姓名" : "1月" ]

print (t)

返回:

姓名 姓别 1月
0 小王 87
3 小张 67
4 小林 78

按条件筛选

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path)

t=df.loc[df[ "姓别" ]== "男","姓名":"1月" ]

print (t)

返回:

姓名 姓别 1月
0 小王 87
2 小李 34
4 小林 78

以数列形式指定行索引

import pandas as pd

path = r "D:\Pyobject2023\object\测试\表格之切法.xlsx"

df = pd.read_excel(path)

t=df.loc[[ 2,1,4 ],[ "姓名","1月" ]]

print (t)

返回:

姓名 1月
2 小李 34
1 小曾 55
4 小林 78